#include "ECS_FCC300.h"
//请自行添加所需头文件
ECS_FCC300_INFO ECS_FCC300_info;
ECS_FCC300_MA ECS_FCC300_ma;
QStandardItemModel ECS_FCC300_mode_info;
CAN_OBJ ECS_FCC300_MA_0C01C1A7;
CAN_OBJ ECS_FCC300_MA_18EFA8F0;

void ECS_FCC300::EQ_0x18F002B2(quint8 data[])
{
ECS_FCC300_info.temp_1=selffun::com_2uint8(data[1],data[0])*0.1-40;
ECS_FCC300_info.temp_2=selffun::com_2uint8(data[3],data[2])*0.1-40;
}


void ECS_FCC300::EQ_0x1820A7C1(quint8 data[]) 
{
    ECS_FCC300_info.Speed=selffun::com_4uint8(0,data[2],data[1],data[0]);
    ECS_FCC300_info.Phase_Current=data[3]*0.5;
    ECS_FCC300_info.Bus_Voltage=selffun::com_2uint8(data[5],data[4]);
    ECS_FCC300_info.Controller_TEMP=data[6]-40;
    ECS_FCC300_info.Motor_TEMP=data[7]-40;
    ECS_FCC300_info.CAN_count_0x1820A7C1=0;
    //EQname::Fault_processing();
}
void ECS_FCC300::EQ_0x1821A7C1(quint8 data[]) 
{
    ECS_FCC300_info.Status=data[0];
    ECS_FCC300_info.Life=data[1];
    ECS_FCC300_info.Fault_Class=data[2]&0b1111;
    ECS_FCC300_info.Calibration_Error=selffun::TakeOut_bit(data[3],0);
    ECS_FCC300_info.Invalid_Model=selffun::TakeOut_bit(data[3],1);
    ECS_FCC300_info.Invalid_Factory_Configuration=selffun::TakeOut_bit(data[3],2);
    ECS_FCC300_info.EEPROM_Error=selffun::TakeOut_bit(data[3],3);
    ECS_FCC300_info.H_W_Over_Current_A=selffun::TakeOut_bit(data[3],6);
    ECS_FCC300_info.H_W_Over_Current_B=selffun::TakeOut_bit(data[3],7);
    ECS_FCC300_info.H_W_Over_Current_C=selffun::TakeOut_bit(data[4],0);
    ECS_FCC300_info.DC_Link_Over_Voltage=selffun::TakeOut_bit(data[4],1);
    ECS_FCC300_info.DC_Link_Under_Voltage=selffun::TakeOut_bit(data[4],2);
    ECS_FCC300_info.WaterOvertemperature=selffun::TakeOut_bit(data[4],3);
    ECS_FCC300_info.Motor_Over_Speed=selffun::TakeOut_bit(data[4],4);
    ECS_FCC300_info.Controller_Over_Temperature=selffun::TakeOut_bit(data[4],5);
    ECS_FCC300_info.Fault_24V=selffun::TakeOut_bit(data[4],6);
    ECS_FCC300_info.BootFault=selffun::TakeOut_bit(data[3],7);
    ECS_FCC300_info.HighVoltageinterlock_fault=selffun::TakeOut_bit(data[5],0);
    ECS_FCC300_info.Heart_Beat_Fault=selffun::TakeOut_bit(data[5],1);
    ECS_FCC300_info.Motor_Over_Temperature=selffun::TakeOut_bit(data[5],2);
    ECS_FCC300_info.Motor_Speed_Below_Min=selffun::TakeOut_bit(data[5],3);
    ECS_FCC300_info.SoftwareSelfcheckFault=selffun::TakeOut_bit(data[5],4);
    ECS_FCC300_info.DriveFault=selffun::TakeOut_bit(data[5],6);
    ECS_FCC300_info.High_DC_Link=selffun::TakeOut_bit(data[5],7);
    ECS_FCC300_info.Low_DC_Link=selffun::TakeOut_bit(data[6],0);
    ECS_FCC300_info.High_Motor_Speed=selffun::TakeOut_bit(data[6],1);
    ECS_FCC300_info.Low_Motor_Speed=selffun::TakeOut_bit(data[6],2);
    ECS_FCC300_info.High_Controller_Temperature=selffun::TakeOut_bit(data[6],5);
    ECS_FCC300_info.High_Motor_Temperature=selffun::TakeOut_bit(data[7],2);
    ECS_FCC300_info.Bias_24V_Out_of_Tolerance_warning=selffun::TakeOut_bit(data[3],5);

    ECS_FCC300_info.CAN_count_0x1821A7C1=0;
    //EQname::Fault_processing();
}
void ECS_FCC300::EQ_0x182FA7C1(quint8 data[]) 
{
    ECS_FCC300_info.Compressor_Mode=selffun::com_2uint8(data[1],data[0]);
    ECS_FCC300_info.Soft_Version=selffun::com_2uint8(data[3],data[2]);
    ECS_FCC300_info.Motor_Current  =data[4]*0.5;
    ECS_FCC300_info.Motor_Voltage  =data[5]*3;
    ECS_FCC300_info.Motor_Power  =selffun::com_2uint8(data[7],data[6]);
    ECS_FCC300_info.CAN_count_0x182FA7C1=0;
    //EQname::Fault_processing();
}
void ECS_FCC300::EQ_0x0C01C1A7_ma_read(quint8 data[]) 
{
    //请填充函数内容
    ECS_FCC300_info.CAN_count_0x0C01C1A7_ma_read=0;
    //EQname::Fault_processing();
}
void ECS_FCC300::EQ_0x18EFA8F0_ma_read(quint8 data[]) 
{
    //请填充函数内容
    ECS_FCC300_info.CAN_count_0x18EFA8F0_ma_read=0;
    //EQname::Fault_processing();
}
void ECS_FCC300::EQ_0x0C01C1A7_MA() 
{
    memset(&ECS_FCC300_MA_0C01C1A7,0,sizeof(ECS_FCC300_MA_0C01C1A7));
    ECS_FCC300_MA_0C01C1A7.ID=0x0C01C1A7;
    ECS_FCC300_MA_0C01C1A7.SendType = 0;
    ECS_FCC300_MA_0C01C1A7.RemoteFlag = 0;
    ECS_FCC300_MA_0C01C1A7.ExternFlag = 1;
    ECS_FCC300_MA_0C01C1A7.DataLen = 8;
    BYTE data[8];
    //ECS_FCC300_ma.Life=255;
    data[0]=ECS_FCC300_ma.AIR_Status;
    data[1]=0;
    data[2]=ECS_FCC300_ma.Life;
    data[3]=selffun::hight32_0_7(ECS_FCC300_ma.AIR_Speed_Set);
    data[4]=selffun::hight32_8_15(ECS_FCC300_ma.AIR_Speed_Set);
    data[5]=selffun::hight32_16_23(ECS_FCC300_ma.AIR_Speed_Set);
    data[6]=0;
    data[7]=0;
    //请填充函数内容
    memcpy(ECS_FCC300_MA_0C01C1A7.Data, data, sizeof(data));
    ECS_FCC300_ma.Life++;
}
void ECS_FCC300::EQ_0x18EFA8F0_MA() 
{
    memset(&ECS_FCC300_MA_18EFA8F0,0,sizeof(ECS_FCC300_MA_18EFA8F0));
    ECS_FCC300_MA_18EFA8F0.ID=0x18EFA8F0;
    ECS_FCC300_MA_18EFA8F0.SendType = 0;
    ECS_FCC300_MA_18EFA8F0.RemoteFlag = 0;
    ECS_FCC300_MA_18EFA8F0.ExternFlag = 1;
    ECS_FCC300_MA_18EFA8F0.DataLen = 8;
    BYTE data[8];
    //请填充函数内容
    data[7]=0;
    data[6]=0;
    data[5]=0;
    data[4]=0;
    data[3]=00;
    data[2]=0;
    data[1]=0;
    data[0]=0;
    memcpy(ECS_FCC300_MA_18EFA8F0.Data, data, sizeof(data));
}
void ECS_FCC300::CAN_loss_rest(int count) 
{
    ECS_FCC300_info.CAN_count_0x1820A7C1++;
    ECS_FCC300_info.CAN_count_0x1821A7C1++;
    ECS_FCC300_info.CAN_count_0x182FA7C1++;
    ECS_FCC300_info.CAN_count_0x0C01C1A7_ma_read++;
    ECS_FCC300_info.CAN_count_0x18EFA8F0_ma_read++;
    if(ECS_FCC300_info.CAN_count_0x1820A7C1>count)
    {     
    }
    if(ECS_FCC300_info.CAN_count_0x1821A7C1>count)
    {     
    }
    if(ECS_FCC300_info.CAN_count_0x182FA7C1>count)
    {     
    }
    if(ECS_FCC300_info.CAN_count_0x0C01C1A7_ma_read>count)
    {     
    }
    if(ECS_FCC300_info.CAN_count_0x18EFA8F0_ma_read>count)
    {     
    }
}
void ECS_FCC300::rest_data_info() 
{
    ECS_FCC300_info.Speed=0;
    ECS_FCC300_info.Phase_Current=0;
    ECS_FCC300_info.Bus_Voltage=0;
    ECS_FCC300_info.Controller_TEMP=0;
    ECS_FCC300_info.Motor_TEMP=0;
    ECS_FCC300_info.Status=0;
    ECS_FCC300_info.Life=0;
    ECS_FCC300_info.Fault_Class=0;
    ECS_FCC300_info.Fault_Code3=0;
    ECS_FCC300_info.Fault_Code2=0;
    ECS_FCC300_info.Fault_Code1=0;
    ECS_FCC300_info.Compressor_Mode=0;
    ECS_FCC300_info.Soft_Version=0;
    ECS_FCC300_info.Motor_Current=0;
    ECS_FCC300_info.Motor_Voltage=0;
    ECS_FCC300_info.Motor_Power=0;
    ECS_FCC300_info.Calibration_Error=0;
    ECS_FCC300_info.Invalid_Model=0;
    ECS_FCC300_info.Invalid_Factory_Configuration=0;
    ECS_FCC300_info.EEPROM_Error=0;
    ECS_FCC300_info.H_W_Over_Current_A=0;
    ECS_FCC300_info.H_W_Over_Current_B=0;
    ECS_FCC300_info.H_W_Over_Current_C=0;
    ECS_FCC300_info.DC_Link_Over_Voltage=0;
    ECS_FCC300_info.DC_Link_Under_Voltage=0;
    ECS_FCC300_info.WaterOvertemperature=0;
    ECS_FCC300_info.Motor_Over_Speed=0;
    ECS_FCC300_info.Controller_Over_Temperature=0;
    ECS_FCC300_info.Fault_24V=0;
    ECS_FCC300_info.BootFault=0;
    ECS_FCC300_info.HighVoltageinterlock_fault=0;
    ECS_FCC300_info.Heart_Beat_Fault=0;
    ECS_FCC300_info.Motor_Over_Temperature=0;
    ECS_FCC300_info.Motor_Speed_Below_Min=0;
    ECS_FCC300_info.SoftwareSelfcheckFault=0;
    ECS_FCC300_info.DriveFault=0;
    ECS_FCC300_info.High_DC_Link=0;
    ECS_FCC300_info.Low_DC_Link=0;
    ECS_FCC300_info.High_Motor_Speed=0;
    ECS_FCC300_info.Low_Motor_Speed=0;
    ECS_FCC300_info.High_Controller_Temperature=0;
    ECS_FCC300_info.High_Motor_Temperature=0;
    ECS_FCC300_info.Bias_24V_Out_of_Tolerance_warning=0;
    ECS_FCC300_info.AIR_Status_read=0;
    ECS_FCC300_info.Life_read=0;
    ECS_FCC300_info.AIR_Speed_Set_read=0;
    ECS_FCC300_info.CapabilitySwitch_0_read=0;
    ECS_FCC300_info.CapabilitySwitch_1_read=0;
    ECS_FCC300_info.CapabilitySwitch_2_read=0;
    ECS_FCC300_info.CapabilitySwitch_3_read=0;
    ECS_FCC300_info.CapabilitySwitch_4_read=0;
    ECS_FCC300_info.CapabilitySwitch_5_read=0;
    ECS_FCC300_info.CapabilitySwitch_6_read=0;
    ECS_FCC300_info.CapabilitySwitch_7_read=0;
}
void ECS_FCC300::rest_data_ma() 
{
    ECS_FCC300_ma.AIR_Status=0;
    ECS_FCC300_ma.Life=0;
    ECS_FCC300_ma.AIR_Speed_Set=0;
    ECS_FCC300_ma.CapabilitySwitch_0=0;
    ECS_FCC300_ma.CapabilitySwitch_1=0;
    ECS_FCC300_ma.CapabilitySwitch_2=0;
    ECS_FCC300_ma.CapabilitySwitch_3=0;
    ECS_FCC300_ma.CapabilitySwitch_4=0;
    ECS_FCC300_ma.CapabilitySwitch_5=0;
    ECS_FCC300_ma.CapabilitySwitch_6=0;
    ECS_FCC300_ma.CapabilitySwitch_7=0;
}
void ECS_FCC300::Fault_processing() 
{
    if(ECS_FCC300_info.Calibration_Error==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("系统校准故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"系统校准故障";}
    }
    if(ECS_FCC300_info.Invalid_Model==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("无效代码故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"无效代码故障";}
    }
    if(ECS_FCC300_info.Invalid_Factory_Configuration==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("无效工厂配置故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"无效工厂配置故障";}
    }
    if(ECS_FCC300_info.EEPROM_Error==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("EEPROM故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"EEPROM故障";}
    }
    if(ECS_FCC300_info.H_W_Over_Current_A==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("A相电流瞬间超电流故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"A相电流瞬间超电流故障";}
    }
    if(ECS_FCC300_info.H_W_Over_Current_B==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("B相电流瞬间超电流故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"B相电流瞬间超电流故障";}
    }
    if(ECS_FCC300_info.H_W_Over_Current_C==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("C相电流瞬间超电流故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"C相电流瞬间超电流故障";}
    }
    if(ECS_FCC300_info.DC_Link_Over_Voltage==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("母线电压过压故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"母线电压过压故障";}
    }
    if(ECS_FCC300_info.DC_Link_Under_Voltage==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("母线电压过低故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"母线电压过低故障";}
    }
    if(ECS_FCC300_info.WaterOvertemperature==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("水温超温故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"水温超温故障";}
    }
    if(ECS_FCC300_info.Motor_Over_Speed==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("空压机超速故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"空压机超速故障";}
    }
    if(ECS_FCC300_info.Controller_Over_Temperature==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("控制器超温故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"控制器超温故障";}
    }
    if(ECS_FCC300_info.Fault_24V==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("控制电源故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"控制电源故障";}
    }
    if(ECS_FCC300_info.BootFault==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("启动故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"启动故障";}
    }
    if(ECS_FCC300_info.HighVoltageinterlock_fault==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("高压互锁故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"高压互锁故障";}
    }
    if(ECS_FCC300_info.Heart_Beat_Fault==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("心跳检测故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"心跳检测故障";}
    }
    if(ECS_FCC300_info.Motor_Over_Temperature==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("空压机超温故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"空压机超温故障";}
    }
    if(ECS_FCC300_info.Motor_Speed_Below_Min==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("电机转速低故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"电机转速低故障";}
    }
    if(ECS_FCC300_info.SoftwareSelfcheckFault==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("软件自检故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"软件自检故障";}
    }
    if(ECS_FCC300_info.DriveFault==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("驱动故障"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"驱动故障";}
    }
    if(ECS_FCC300_info.High_DC_Link==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("母线电压偏高警告"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"母线电压偏高警告";}
    }
    if(ECS_FCC300_info.Low_DC_Link==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("母线电压偏低警告"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"母线电压偏低警告";}
    }
    if(ECS_FCC300_info.High_Motor_Speed==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("空压机转速过高警告"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"空压机转速过高警告";}
    }
    if(ECS_FCC300_info.Low_Motor_Speed==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("空压机转速过低警告"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"空压机转速过低警告";}
    }
    if(ECS_FCC300_info.High_Controller_Temperature==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("控制器温度过高警告"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"控制器温度过高警告";}
    }
    if(ECS_FCC300_info.High_Motor_Temperature==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("空压机温度偏高警告"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"空压机温度偏高警告";}
    }
    if(ECS_FCC300_info.Bias_24V_Out_of_Tolerance_warning==1)
    {
        int index = ECS_FCC300_info.FaultList.indexOf("24V超差警告"); 
        if(index==-1)
        { ECS_FCC300_info.FaultList<<"24V超差警告";}
    }
}
void ECS_FCC300::EQ_runinfo() 
{
    ECS_FCC300_mode_info.setHorizontalHeaderLabels(QStringList()<<QStringLiteral("项目")<<QStringLiteral("数值")<<QStringLiteral("单位"));
    ECS_FCC300_mode_info.setItem(0,0,new QStandardItem("状态模式"));
    ECS_FCC300_mode_info.setItem(0,1,new QStandardItem(QString::number(ECS_FCC300_ma.AIR_Status)));
    ECS_FCC300_mode_info.setItem(0,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(1,0,new QStandardItem("心跳"));
    ECS_FCC300_mode_info.setItem(1,1,new QStandardItem(QString::number(ECS_FCC300_ma.Life)));
    ECS_FCC300_mode_info.setItem(1,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(2,0,new QStandardItem("速度设定"));
    ECS_FCC300_mode_info.setItem(2,1,new QStandardItem(QString::number(ECS_FCC300_ma.AIR_Speed_Set)));
    ECS_FCC300_mode_info.setItem(2,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(3,0,new QStandardItem("能力反馈开关_0"));
    ECS_FCC300_mode_info.setItem(3,1,new QStandardItem(QString::number(ECS_FCC300_ma.CapabilitySwitch_0)));
    ECS_FCC300_mode_info.setItem(3,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(4,0,new QStandardItem("能力反馈开关_1"));
    ECS_FCC300_mode_info.setItem(4,1,new QStandardItem(QString::number(ECS_FCC300_ma.CapabilitySwitch_1)));
    ECS_FCC300_mode_info.setItem(4,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(5,0,new QStandardItem("能力反馈开关_2"));
    ECS_FCC300_mode_info.setItem(5,1,new QStandardItem(QString::number(ECS_FCC300_ma.CapabilitySwitch_2)));
    ECS_FCC300_mode_info.setItem(5,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(6,0,new QStandardItem("能力反馈开关_3"));
    ECS_FCC300_mode_info.setItem(6,1,new QStandardItem(QString::number(ECS_FCC300_ma.CapabilitySwitch_3)));
    ECS_FCC300_mode_info.setItem(6,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(7,0,new QStandardItem("能力反馈开关_4"));
    ECS_FCC300_mode_info.setItem(7,1,new QStandardItem(QString::number(ECS_FCC300_ma.CapabilitySwitch_4)));
    ECS_FCC300_mode_info.setItem(7,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(8,0,new QStandardItem("能力反馈开关_5"));
    ECS_FCC300_mode_info.setItem(8,1,new QStandardItem(QString::number(ECS_FCC300_ma.CapabilitySwitch_5)));
    ECS_FCC300_mode_info.setItem(8,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(9,0,new QStandardItem("能力反馈开关_6"));
    ECS_FCC300_mode_info.setItem(9,1,new QStandardItem(QString::number(ECS_FCC300_ma.CapabilitySwitch_6)));
    ECS_FCC300_mode_info.setItem(9,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(10,0,new QStandardItem("能力反馈开关_7"));
    ECS_FCC300_mode_info.setItem(10,1,new QStandardItem(QString::number(ECS_FCC300_ma.CapabilitySwitch_7)));
    ECS_FCC300_mode_info.setItem(10,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(11,0,new QStandardItem("速度反馈"));
    ECS_FCC300_mode_info.setItem(11,1,new QStandardItem(QString::number(ECS_FCC300_info.Speed)));
    ECS_FCC300_mode_info.setItem(11,2,new QStandardItem("rpm"));
    ECS_FCC300_mode_info.setItem(12,0,new QStandardItem("母线电流"));
    ECS_FCC300_mode_info.setItem(12,1,new QStandardItem(QString::number(ECS_FCC300_info.Phase_Current)));
    ECS_FCC300_mode_info.setItem(12,2,new QStandardItem("A"));
    ECS_FCC300_mode_info.setItem(13,0,new QStandardItem("母线电压"));
    ECS_FCC300_mode_info.setItem(13,1,new QStandardItem(QString::number(ECS_FCC300_info.Bus_Voltage)));
    ECS_FCC300_mode_info.setItem(13,2,new QStandardItem("V"));
    ECS_FCC300_mode_info.setItem(14,0,new QStandardItem("控制器温度"));
    ECS_FCC300_mode_info.setItem(14,1,new QStandardItem(QString::number(ECS_FCC300_info.Controller_TEMP)));
    ECS_FCC300_mode_info.setItem(14,2,new QStandardItem("℃"));
    ECS_FCC300_mode_info.setItem(15,0,new QStandardItem("电机温度"));
    ECS_FCC300_mode_info.setItem(15,1,new QStandardItem(QString::number(ECS_FCC300_info.Motor_TEMP)));
    ECS_FCC300_mode_info.setItem(15,2,new QStandardItem("℃"));
    ECS_FCC300_mode_info.setItem(16,0,new QStandardItem("运行状态"));
    ECS_FCC300_mode_info.setItem(16,1,new QStandardItem(QString::number(ECS_FCC300_info.Status)));
    ECS_FCC300_mode_info.setItem(16,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(17,0,new QStandardItem("心跳"));
    ECS_FCC300_mode_info.setItem(17,1,new QStandardItem(QString::number(ECS_FCC300_info.Life)));
    ECS_FCC300_mode_info.setItem(17,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(18,0,new QStandardItem("故障等级"));
    ECS_FCC300_mode_info.setItem(18,1,new QStandardItem(QString::number(ECS_FCC300_info.Fault_Class)));
    ECS_FCC300_mode_info.setItem(18,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(19,0,new QStandardItem("故障等级3(不可恢复）"));
    ECS_FCC300_mode_info.setItem(19,1,new QStandardItem(QString::number(ECS_FCC300_info.Fault_Code3)));
    ECS_FCC300_mode_info.setItem(19,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(20,0,new QStandardItem("故障等级2(可恢复）"));
    ECS_FCC300_mode_info.setItem(20,1,new QStandardItem(QString::number(ECS_FCC300_info.Fault_Code2)));
    ECS_FCC300_mode_info.setItem(20,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(21,0,new QStandardItem("故障等级1（警告）"));
    ECS_FCC300_mode_info.setItem(21,1,new QStandardItem(QString::number(ECS_FCC300_info.Fault_Code1)));
    ECS_FCC300_mode_info.setItem(21,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(22,0,new QStandardItem("空压机模型"));
    ECS_FCC300_mode_info.setItem(22,1,new QStandardItem(QString::number(ECS_FCC300_info.Compressor_Mode)));
    ECS_FCC300_mode_info.setItem(22,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(23,0,new QStandardItem("软件版本"));
    ECS_FCC300_mode_info.setItem(23,1,new QStandardItem(QString::number(ECS_FCC300_info.Soft_Version)));
    ECS_FCC300_mode_info.setItem(23,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(24,0,new QStandardItem("电机输出电流"));
    ECS_FCC300_mode_info.setItem(24,1,new QStandardItem(QString::number(ECS_FCC300_info.Motor_Current)));
    ECS_FCC300_mode_info.setItem(24,2,new QStandardItem("A"));
    ECS_FCC300_mode_info.setItem(25,0,new QStandardItem("电机输出电压"));
    ECS_FCC300_mode_info.setItem(25,1,new QStandardItem(QString::number(ECS_FCC300_info.Motor_Voltage)));
    ECS_FCC300_mode_info.setItem(25,2,new QStandardItem("V"));
    ECS_FCC300_mode_info.setItem(26,0,new QStandardItem("电机输出功率"));
    ECS_FCC300_mode_info.setItem(26,1,new QStandardItem(QString::number(ECS_FCC300_info.Motor_Power)));
    ECS_FCC300_mode_info.setItem(26,2,new QStandardItem("W"));
    ECS_FCC300_mode_info.setItem(27,0,new QStandardItem("系统校准故障"));
    ECS_FCC300_mode_info.setItem(27,1,new QStandardItem(QString::number(ECS_FCC300_info.Calibration_Error)));
    ECS_FCC300_mode_info.setItem(27,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(28,0,new QStandardItem("无效代码故障"));
    ECS_FCC300_mode_info.setItem(28,1,new QStandardItem(QString::number(ECS_FCC300_info.Invalid_Model)));
    ECS_FCC300_mode_info.setItem(28,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(29,0,new QStandardItem("无效工厂配置故障"));
    ECS_FCC300_mode_info.setItem(29,1,new QStandardItem(QString::number(ECS_FCC300_info.Invalid_Factory_Configuration)));
    ECS_FCC300_mode_info.setItem(29,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(30,0,new QStandardItem("EEPROM故障"));
    ECS_FCC300_mode_info.setItem(30,1,new QStandardItem(QString::number(ECS_FCC300_info.EEPROM_Error)));
    ECS_FCC300_mode_info.setItem(30,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(31,0,new QStandardItem("A相电流瞬间超电流故障"));
    ECS_FCC300_mode_info.setItem(31,1,new QStandardItem(QString::number(ECS_FCC300_info.H_W_Over_Current_A)));
    ECS_FCC300_mode_info.setItem(31,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(32,0,new QStandardItem("B相电流瞬间超电流故障"));
    ECS_FCC300_mode_info.setItem(32,1,new QStandardItem(QString::number(ECS_FCC300_info.H_W_Over_Current_B)));
    ECS_FCC300_mode_info.setItem(32,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(33,0,new QStandardItem("C相电流瞬间超电流故障"));
    ECS_FCC300_mode_info.setItem(33,1,new QStandardItem(QString::number(ECS_FCC300_info.H_W_Over_Current_C)));
    ECS_FCC300_mode_info.setItem(33,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(34,0,new QStandardItem("母线电压过压故障"));
    ECS_FCC300_mode_info.setItem(34,1,new QStandardItem(QString::number(ECS_FCC300_info.DC_Link_Over_Voltage)));
    ECS_FCC300_mode_info.setItem(34,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(35,0,new QStandardItem("母线电压过低故障"));
    ECS_FCC300_mode_info.setItem(35,1,new QStandardItem(QString::number(ECS_FCC300_info.DC_Link_Under_Voltage)));
    ECS_FCC300_mode_info.setItem(35,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(36,0,new QStandardItem("水温超温故障"));
    ECS_FCC300_mode_info.setItem(36,1,new QStandardItem(QString::number(ECS_FCC300_info.WaterOvertemperature)));
    ECS_FCC300_mode_info.setItem(36,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(37,0,new QStandardItem("空压机超速故障"));
    ECS_FCC300_mode_info.setItem(37,1,new QStandardItem(QString::number(ECS_FCC300_info.Motor_Over_Speed)));
    ECS_FCC300_mode_info.setItem(37,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(38,0,new QStandardItem("控制器超温故障"));
    ECS_FCC300_mode_info.setItem(38,1,new QStandardItem(QString::number(ECS_FCC300_info.Controller_Over_Temperature)));
    ECS_FCC300_mode_info.setItem(38,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(39,0,new QStandardItem("控制电源故障"));
    ECS_FCC300_mode_info.setItem(39,1,new QStandardItem(QString::number(ECS_FCC300_info.Fault_24V)));
    ECS_FCC300_mode_info.setItem(39,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(40,0,new QStandardItem("启动故障"));
    ECS_FCC300_mode_info.setItem(40,1,new QStandardItem(QString::number(ECS_FCC300_info.BootFault)));
    ECS_FCC300_mode_info.setItem(40,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(41,0,new QStandardItem("高压互锁故障"));
    ECS_FCC300_mode_info.setItem(41,1,new QStandardItem(QString::number(ECS_FCC300_info.HighVoltageinterlock_fault)));
    ECS_FCC300_mode_info.setItem(41,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(42,0,new QStandardItem("心跳检测故障"));
    ECS_FCC300_mode_info.setItem(42,1,new QStandardItem(QString::number(ECS_FCC300_info.Heart_Beat_Fault)));
    ECS_FCC300_mode_info.setItem(42,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(43,0,new QStandardItem("空压机超温故障"));
    ECS_FCC300_mode_info.setItem(43,1,new QStandardItem(QString::number(ECS_FCC300_info.Motor_Over_Temperature)));
    ECS_FCC300_mode_info.setItem(43,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(44,0,new QStandardItem("电机转速低故障"));
    ECS_FCC300_mode_info.setItem(44,1,new QStandardItem(QString::number(ECS_FCC300_info.Motor_Speed_Below_Min)));
    ECS_FCC300_mode_info.setItem(44,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(45,0,new QStandardItem("软件自检故障"));
    ECS_FCC300_mode_info.setItem(45,1,new QStandardItem(QString::number(ECS_FCC300_info.SoftwareSelfcheckFault)));
    ECS_FCC300_mode_info.setItem(45,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(46,0,new QStandardItem("驱动故障"));
    ECS_FCC300_mode_info.setItem(46,1,new QStandardItem(QString::number(ECS_FCC300_info.DriveFault)));
    ECS_FCC300_mode_info.setItem(46,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(47,0,new QStandardItem("母线电压偏高警告"));
    ECS_FCC300_mode_info.setItem(47,1,new QStandardItem(QString::number(ECS_FCC300_info.High_DC_Link)));
    ECS_FCC300_mode_info.setItem(47,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(48,0,new QStandardItem("母线电压偏低警告"));
    ECS_FCC300_mode_info.setItem(48,1,new QStandardItem(QString::number(ECS_FCC300_info.Low_DC_Link)));
    ECS_FCC300_mode_info.setItem(48,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(49,0,new QStandardItem("空压机转速过高警告"));
    ECS_FCC300_mode_info.setItem(49,1,new QStandardItem(QString::number(ECS_FCC300_info.High_Motor_Speed)));
    ECS_FCC300_mode_info.setItem(49,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(50,0,new QStandardItem("空压机转速过低警告"));
    ECS_FCC300_mode_info.setItem(50,1,new QStandardItem(QString::number(ECS_FCC300_info.Low_Motor_Speed)));
    ECS_FCC300_mode_info.setItem(50,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(51,0,new QStandardItem("控制器温度过高警告"));
    ECS_FCC300_mode_info.setItem(51,1,new QStandardItem(QString::number(ECS_FCC300_info.High_Controller_Temperature)));
    ECS_FCC300_mode_info.setItem(51,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(52,0,new QStandardItem("空压机温度偏高警告"));
    ECS_FCC300_mode_info.setItem(52,1,new QStandardItem(QString::number(ECS_FCC300_info.High_Motor_Temperature)));
    ECS_FCC300_mode_info.setItem(52,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(53,0,new QStandardItem("24V超差警告"));
    ECS_FCC300_mode_info.setItem(53,1,new QStandardItem(QString::number(ECS_FCC300_info.Bias_24V_Out_of_Tolerance_warning)));
    ECS_FCC300_mode_info.setItem(53,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(54,0,new QStandardItem("读取状态模式"));
    ECS_FCC300_mode_info.setItem(54,1,new QStandardItem(QString::number(ECS_FCC300_info.AIR_Status_read)));
    ECS_FCC300_mode_info.setItem(54,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(55,0,new QStandardItem("读取心跳"));
    ECS_FCC300_mode_info.setItem(55,1,new QStandardItem(QString::number(ECS_FCC300_info.Life_read)));
    ECS_FCC300_mode_info.setItem(55,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(56,0,new QStandardItem("读取速度设定"));
    ECS_FCC300_mode_info.setItem(56,1,new QStandardItem(QString::number(ECS_FCC300_info.AIR_Speed_Set_read)));
    ECS_FCC300_mode_info.setItem(56,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(57,0,new QStandardItem("读取能力反馈开关_0"));
    ECS_FCC300_mode_info.setItem(57,1,new QStandardItem(QString::number(ECS_FCC300_info.CapabilitySwitch_0_read)));
    ECS_FCC300_mode_info.setItem(57,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(58,0,new QStandardItem("读取能力反馈开关_1"));
    ECS_FCC300_mode_info.setItem(58,1,new QStandardItem(QString::number(ECS_FCC300_info.CapabilitySwitch_1_read)));
    ECS_FCC300_mode_info.setItem(58,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(59,0,new QStandardItem("读取能力反馈开关_2"));
    ECS_FCC300_mode_info.setItem(59,1,new QStandardItem(QString::number(ECS_FCC300_info.CapabilitySwitch_2_read)));
    ECS_FCC300_mode_info.setItem(59,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(60,0,new QStandardItem("读取能力反馈开关_3"));
    ECS_FCC300_mode_info.setItem(60,1,new QStandardItem(QString::number(ECS_FCC300_info.CapabilitySwitch_3_read)));
    ECS_FCC300_mode_info.setItem(60,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(61,0,new QStandardItem("读取能力反馈开关_4"));
    ECS_FCC300_mode_info.setItem(61,1,new QStandardItem(QString::number(ECS_FCC300_info.CapabilitySwitch_4_read)));
    ECS_FCC300_mode_info.setItem(61,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(62,0,new QStandardItem("读取能力反馈开关_5"));
    ECS_FCC300_mode_info.setItem(62,1,new QStandardItem(QString::number(ECS_FCC300_info.CapabilitySwitch_5_read)));
    ECS_FCC300_mode_info.setItem(62,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(63,0,new QStandardItem("读取能力反馈开关_6"));
    ECS_FCC300_mode_info.setItem(63,1,new QStandardItem(QString::number(ECS_FCC300_info.CapabilitySwitch_6_read)));
    ECS_FCC300_mode_info.setItem(63,2,new QStandardItem(""));
    ECS_FCC300_mode_info.setItem(64,0,new QStandardItem("读取能力反馈开关_7"));
    ECS_FCC300_mode_info.setItem(64,1,new QStandardItem(QString::number(ECS_FCC300_info.CapabilitySwitch_7_read)));
    ECS_FCC300_mode_info.setItem(64,2,new QStandardItem(""));
}
